home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Language/OS - Multiplatform Resource Library
/
LANGUAGE OS.iso
/
ast_text
/
faqs
/
frcmplr1
/
part1
next >
Wrap
Text File
|
1993-06-28
|
57KB
|
1,549 lines
Newsgroups: comp.compilers,comp.lang.misc,comp.archives.admin,news.answers,comp.answers
Path: senator-bedfellow.mit.edu!enterpoop.mit.edu!world!iecc!compilers-sender
From: David Muir Sharnoff <muir@idiom.berkeley.ca.us>
Subject: Catalog of compilers, interpreters, and other language tools [p1of3]
Message-ID: <free1-Jun-93@comp.compilers>
Followup-To: comp.archives.admin
Summary: Monthly posting of free language tools that include source code
Keywords: tools, FTP, administrivia
Sender: compilers-sender@iecc.cambridge.ma.us
Supersedes: <free1-May-93@comp.compilers>
Reply-To: muir@idiom.berkeley.ca.us
Organization: University of California, Berkeley
Date: Tue, 1 Jun 1993 11:00:24 GMT
Approved: compilers@iecc.cambridge.ma.us
Expires: Thu, 1 Jul 1993 23:59:00 GMT
Lines: 1530
Xref: senator-bedfellow.mit.edu comp.compilers:5189 comp.lang.misc:13612 comp.archives.admin:1073 news.answers:8946 comp.answers:840
Archive-name: free-compilers/part1
Last-modified: 1993/05/24
Version: 3.4
Catalog of Free Compilers and Interpreters.
This document attempts to catalog freely availiable compilers,
interpreters, libraries, and language tools. This is still a draft
document: it has errors, it is not complete, and I might re-organize
it. It is my intention that it be aimed at developers rather than
researchers. I am much more intersted in production quality systems.
There is some overlap of coverage between this document and other
lists and catalogs. See the references section for a list...
To be on this list a package must be free and have source code
included. If there are any packages on this list that do not have
source code included or are not free, then I would appreciate it if it
is brought to my attention so that I may correct the error.
There are many fields filled in with a question mark (?). If you have
information which would allow me to remove question marks, please
send it to me. The only field which I do not expect to be completely
obvious is the "parts" field because I wish to distinguish between
compilers, translators, and interpretors. To qualify as a compiler
as I'm using the term, it must compile to a machine-readable format
no higher-level than assembly. Why? Just because. If you've
got a better idea, send it in.
This document may be ftp'ed from ~ftp/pub/compilers-list/FreeCompilers*
on idiom.berkeley.ca.us. Be nice to my SLIP link.
If you would be interested in purchasing a CD-ROM with a complete set
of the source code listed here, let me know. If enough people are
interested, I might cut a disc. Bear in mind that you can get most, if
not all, of this from Prime Time Freeware's disc set (ptf@cfcl.com).
Or would you be more interested in sparc binaries? $250 interested?
Or would you like to either take over maintenance of this document or
pay me to keep doing it? (hint: maintaining this is taking too much of
my time)
David Muir Sharnoff <muir@idiom.berkeley.ca.us>, 1993/02/13
------------------------- selected major changes ------------------------------
Selected changes section
language package
-------- -------
new listings:
EBNF PRE-CC Xtended
COCOL (EBNF variant) COCO/R
C Chop [a code generator for lcc]
C C_Interp
dc (unix arbt. math) GNU DC
Icon, BNF Ibpag2
Lout Lout [formatting system]
Oberon Ceres workstation Oberon System
Scheme Bigloo
new versions:
Assembler (various) gas 2.1.1
awk (nawk) gawk (GNU awk) 2.15.2
C, C++, Objective C gcc 2.4.0
C, C++ gdb 4.9
C, nroff c2man 2.03
elisp GNU Emacs 19.7
es (a functional shell) es 0.84
IDL (DOE's Interface..) SunSoft OMG IDL CFE 1.2
INTERCAL C-INTERCAL 0.9
Kevo (Forth) Kevo 0.9b6
Postscript Ghostscript 2.6
Scheme Hobbit 2
Scheme Similix 5.0
Scheme slib 1d2
sed GNU sed 1.16
edits:
deleted (no source):
-------------------------------------------------------------------------------
------------------------------- tools -----------------------------------------
-------------------------------------------------------------------------------
language: ABC
package: ABC
version: 1.04.01
parts: ?
author: Leo Geurts, Lambert Meertens,
Steven Pemberton <Steven.Pemberton@cwi.nl>
how to get: ftp programming/languages/abc/* from mcsun.eu.net or ftp.eu.net
description: ABC is an imperative language embedded in its own
environment. It is interactive, structured,
high-level, very easy to learn, and easy to use.
It is suitable for general everyday programming,
such as you would use BASIC, Pascal, or AWK for.
It is not a systems-programming language. It is an
excellent teaching language, and because it is
interactive, excellent for prototyping. ABC programs
are typically very compact, around a quarter to a
fifth the size of the equivalent Pascal or C program.
However, this is not at the cost of readability,
on the contrary in fact.
references: "The ABC Programmer's Handbook" by Leo Geurts,
Lambert Meertens and Steven Pemberton, published by
Prentice-Hall (ISBN 0-13-000027-2)
"An Alternative Simple Language and Environment for PCs"
by Steven Pemberton, IEEE Software, Vol. 4, No. 1,
January 1987, pp. 56-64.
ports: unix, MSDOS, atari, mac
contact: abc@cwi.nl
updated: 1991/05/02
language: ABCL/1 (An object-Based Concurrent Language)
package: ABCL/1
version: ?
parts: ?
author: Akinori Yonezawa, ABCL Group now at Department of Information
Science, the University of Tokyo
how to get: ftp pub/abcl1/* from camille.is.s.u-tokyo.ac.jp
description: Asynchronous message passing to objects.
references: "ABCL: An Object-Oriented Concurrent System", Edited by
Akinori Yonezawa, The MIT Press, 1990, (ISBN 0-262-24029-7)
restriction: no commercial use, must return license agreement
requires: Common Lisp
contact: abcl@is.s.u-tokyo.ac.jp
updated: 1990/05/23
language: ABCL ???
package: ABCL/R2
version: ?
author: masuhara@is.s.u-tokyo.ac.jp, matsu@is.s.u-tokyo.ac.jp,
takuo@is.s.u-tokyo.ac.jp, yonezawa@is.s.u-tokyo.ac.jp
how to get: ftp pub/abclr2/* from camille.is.s.u-tokyo.ac.jp
description: ABCL/R2 is an object-oriented concurrent reflective language
based on Hybrid Group Architecture. As a reflective language,
an ABCL/R2 program can dynamically control its own behavior,
such as scheduling policy, from within user-program. An an
object-oriented concurrent language, this system has almost all
functions of ABCL/1.
requires: Common Lisp
updated: 1993/01/28
language: Ada
package: Ada/Ed
version: 1.11.0a+
parts: translator(?), interpreter, ?
how to get: ftp pub/Ada/Ada-Ed from cnam.cnam.fr
description: Ada/Ed is a translator-interpreter for Ada. It is
intended as a teaching tool, and does not have the
capacity, performance, or robustness of commercial
Ada compilers. Ada/Ed was developed at New York
University, as part of a long-range project in
language definition and software prototyping.
conformance: Ada 83. Last validated with version 1.7 of the ACVC tests.
being an interpreter, it does not implement most
representation clauses, and thus does not support systems
programming close to the machine level.
ports: Unix, MSDOS, Amiga, Atari
contact: Michael Feldman <mfeldman@seas.gwu.edu>
updated: 1992/05/08
language: Ada
package: Ada grammar
version: ?
parts: scanner(lex), parser(yacc)
how to get: ftp from primost.cs.wisc.edu or mail to
compilers-server@iecc.cambridge.ma.us
contact: masticol@dumas.rutgers.edu
updated: 1991/10/12
language: Ada
package: Compiler for Toy/Ada in SML/NJ
version: ?
parts: translator(?)
author: Amit Bhatiani <bhatiaa@polly.cs.rose-hulman.edu>
how to get: ftp pub/compiler*.tar.Z from master.cs.rose-hulman.edu
conformance: subset
updated: 1992/04/08
language: Ada
package: NASA PrettyPrinter
version: ?
parts: Ada LR parser, ?
how to get: ftp from Ada Software Repository on wsmr-simtel20.army.mil
description: pretty-print program that contains an ada parser
requires: Ada
info-source: Michael Feldman <mfeldman@seas.gwu.edu> in comp.compilers
[he also has a yacc grammar for ada]
updated: 1991/02/01
language: Ada
package: yacc grammar for Ada
version: ?
parts: parser(yacc)
author: Herman Fischer
how to get: ftp PD2:<ADA.EXTERNAL-TOOLS>GRAM2.SRC
from wsmr-simtel20.army.mil
contact: ?
updated: 1991/02/01
language: Ada
package: Paradise
version: 2.0
parts: library
how to get: ftp pub/Ada/Paradise from cnam.cnam.fr
author: ?
description: Paradise is a subsystem (a set of packages) developped
to implement inter-processes, inter-tasks and
inter-machines communication for Ada programs in
the Unix world. This subsystem gives the user full
access to files, pipes, sockets (both Unix and
Internet), and pseudo-devices.
ports: Sun, Dec, Sony Mips, Verdex compiler, DEC compiler,
Alsys/Systeam compiler
contact: paradise-info@cnam.cnam.fr
updated: 1992/09/30
language: Ada
package: Adamakegen
version: 2.6.3
parts: makefile generator
author: Owen O'Malley <omalley@porte-de-st-ouen.ics.uci.edu>
how to get: ftp ftp/pub/arcadia/adamakegen* from spare.ics.uci.edu
description: A program that generates makefiles for Ada programs
requires: Icon
ports: Verdix, SunAda
updated: 1993/03/02
language: ADL (Adventure Definition Language)
package: ADL
parts: interpreter
author: Ross Cunniff <cunniff@fc.hp.com>, Tim Brengle
how to get: comp.sources.games archive volume 2
description: An adventure language, semi-object-oriented with LISP-like
syntax. A superset of DDL.
updated: ?
language: Algol, Foogol
package: foogol
version: ?
parts: compiler
author: ?
how to get: comp.sources.unix archive volume 8
conformance: subset of Algol
description: ?
ports: VAX
updated: ?
language: ALLOY
package: ALLOY
version: 2.0?
parts: interpreter, documentation, examples
author: Thanasis Mitsolides <mitsolid@cs.nyu.edu>
how to get: ftp pub/local/alloy/* from cs.nyu.edu
description: ALLOY is a higher level parallel programming language
appropriate for programming massively parallel computing
systems. It is based on a combination of ideas from
functional, object oriented and logic programming languages.
The result is a language that can directly support
functional, object oriented and logic programming styles
in a unified and controlled framework. Evaluating modes
support serial or parallel execution, eager or lazy
evaluation, non-determinism or multiple solutions etc.
ALLOY is simple as it only requires 29 primitives in all
(half of which for Object Oriented Programming support).
ports: sparc, ?
updated: 1991/06/11
language: APL
package: I-APL
how to get: ftp languages/apl/* from watserv1.waterloo.edu
updated: 1992/07/06
language: APL
package: APLWEB
version: ?
parts: translator(web->apl), translator(web->TeX)
author: Dr. Christoph von Basum <CvB@erasmus.hrz.uni-bielefeld.de>
how to get: ftp languages/apl/aplweb/* from watserv1.uwaterloo.ca
updated: 1992/12/07
language: Assembler (various)
package: GNU assembler (GAS)
version: 2.1.1
parts: assembler, documentation
how to get: ftp gas-2.0.tar.z from a GNU archive site
description: Many CPU types are now handled, and COFF and IEEE-695 formats
are supported as well as standard a.out.
ports: Sun-3, Sun-4, i386/{386BSD, BSD/386, Linux, PS/2-AIX},
VAX/{Ultrix,BSD,VMS}
bugs: bug-gnu-utils@prep.ai.mit.edu
updated: 1993/05/20
language: Assembler (8051)
package: CAS: The Free Full-Featured 8051 Assembler
version: 1
parts: assembler
author: Mark Hopkins <markh@csd4.csd.uwm.edu>
how to get: ftp pub/8051/assem from csd4.csd.uwm.edu
description: an Experimental public domain one-pass assembler for the 8051
with C-like syntax. Related software contained in /pub/8051,
including arbitrary precision math, and multitasking routines.
ports: MSDOS, Ultrix, Sun (contact author)
requries: ANSI-C compiler
updated: 1992/08/13
language: Assembler (mc6809)
package: usim
version: 0.11
parts: simulator, documentation
author: Ray P. Bellis <rpb@psy.ox.ac.uk>
how to get: ftp /pub/mc6809/usim-* from ftp.cns.ox.ac.uk
description: a mc6809 simulator
updated: 1993/02/14
language: Assembler (DSP56000)
package: ?
version: 1.1
parts: assembler
author: Quinn Jensen <jensenq@qcj.icon.com>
how to get: alt.sources archive or ftp ? from wuarchive.wustl.edu
description: ?
updated: ?
language: Assembler (6502, Z80, 8085, 68xx)
package: ?
version: ?
author: msmakela@cc.helsinki.fi and Alan R. Baldwin
how to get: ftp ? from ccosun.caltech.edu
description: I have enhanced a set of 68xx and Z80 and 8085 cross assemblers
to support 6502. These assemblers run on MS-DOS computers or on
any systems that support standard Kerninghan & Richie C, for
example, Amiga, Atari ST and any "big" machines
updated: 1993/03/10
language: ? attribute grammar ?
package: Alpha
version: pre-release
parts: semantic-analysis generator?, documentation(german)
author: Andreas Koschinsky <koschins@cs.tu-berlin.de>
how to get: from author
description: I have written a compiler generator. The generator is called
Alpha and uses attribute grammars as specification calculus.
Alpha is the result of a thesis at Technische Universitaet
Berlin. I am looking for someone who would like to test and use
Alpha. Alpha generates compilers from a compiler
specification. This specification describes a compiler in
terminology of attribute grammars. Parser and Scanner are
generated by means of Bison and Flex. Alpha generates an
ASE-evaluator (Jazayeri and Walter). The documentation is in
german since it is a thesis at a german university.
updated: 1993/02/16
language: awk (new)
package: mawk
version: 1.1.3
how to get: ftp public/mawk* from oxy.edu
parts: interpreter
author: Mike Brennan <brennan@bcsaic.boeing.com>
conformance: superset
+ RS can be a regular expression
features: + faster than most new awks
ports: sun3,sun4:sunos4.0.3 vax:bsd4.3,ultrix4.1 stardent3000:sysVR3
decstation:ultrix4.1 msdos:turboC++
contact: Mike Brennan <brennan@bcsaic.boeing.com>
status: actively developed
updated: 1993/03/14
language: awk (new)
package: GNU awk (gawk)
version: 2.15.2
parts: interpreter, documentation
author: David Trueman <david@cs.dal.ca> and
Arnold Robbins <arnold@cc.gatech.edu>
how to get: ftp gawk-2.15.tar.Z from a GNU archive site
conformance: superset including some Plan 9 features
ports: unix, msdos:msc5.1
status: activly developed
updated: 1993/05/19
language: BASIC
package: bwBASIC (Bywater BASIC interpreter)
version: 1.10
parts: interpreter, shell, ?
author: Ted A. Campbell <tcamp@acpub.duke.edu>
how to get: ftp pub/bywater/* from duke.cs.duke.edu
description: The Bywater BASIC Interpreter (bwBASIC) implements a large
superset of the ANSI Standard for Minimal BASIC (X3.60-1978)
implemented in ANSI C, and offers a simple interactive environ-
ment including some shell program facilities as an extension of
BASIC. The interpreter has been compiled successfully on a
range of ANSI C compilers on varying platforms with no
alterations to source code necessary.
ports: DOS, Unix, ?
updated: 1992/11/05
language: BASIC
package: ? basic ?
version: ?
parts: paser(yacc), interpreter
author: ?
how to get: comp.sources.unix archives volume 2
updated: ?
language: BASIC
package: ? bournebasic ?
version: ?
parts: interpreter
author: ?
how to get: comp.sources.misc archives volume 1
description: ?
updated: ?
language: BASIC
package: ? basic ?
version: ?
parts: interpreter
author: ?
how to get: ftp ? from wsmr-simtel20.army.mil
description: ?
contact: ?
updated: ?
language: BASIC
package: ubasic
version: 8
parts: ?
author: Yuji Kida
how to get: ? ask archie ?
references: reviewed in Notices of the A.M.S #36 (May/June 1989),
and "A math-oriented high-precision BASIC", #38 (3/91)
contact: ?
updated: 1992/07/06
language: BASIC
package: ?
version: ?
parts: interpreter
how to get: ftp pub/unix-c/languages/basic/basic.tar-z from oak.oakland.edu
description: public domain version of DEC's MU-Basic with Microsoft
Basic mixed together
contact: ?
updated: ?
language: BCPL
package: ?
version: ?
author: ?
how to get: ftp systems/amiga/programming/languages/BCPL/BCPL4Amiga.lzh
from wuarchive.wustl.edu.
description: The original INTCODE interpreter for BCPL.
ports: Amiga, UNIX, MSDOS
contact: ?
updated: ?
language: BCPL
package: ?
version: ?
how to get: ftp [.languages]bcpl.tar_z from ftp.syd.dit.csiro.au
description: A BCPL* (Basic Combined Programming Language) compiler
bootstrap kit with an INTCODE interpreter in C.
contact: Ken Yap <ken@syd.dit.CSIRO.AU>
updated: ?
language: BNF (Extended)
package: TXL: Tree Transformation Language
version: 6.0
parts: translator generator
author: Jim Cordy <cordy@qucis.queensu.ca>
how to get: ftp txl/00README for instructions from qusuna.qucis.queensu.ca
description: + TXL is a generalized source-to-source translation
system suitable for rapidly prototyping computer
languages and language processors of any kind. It has
been used to prototype several new programming
languages as well as specification languages, command
languages, and more traditional program transformation
tasks such as constant folding, type inference, source
optimization and reverse engineering. TXL takes
as input an arbitrary context-free grammar in extended
BNF-like notation, and a set of show-by-example
transformation rules to be applied to inputs parsed
using the grammar.
updated: 1992/02/23
language: BNF (Extended)
package: Gray
version: 3
parts: parser generator(Forth)
author: Martin Anton Ertl <anton@mips.complang.tuwien.ac.at>
how to get: author; version 2 is on various ftp sites
description: Gray is a parser generator written in Forth. It takes
grammars in an extended BNF and produces executable Forth
code for recursive descent parsers. There is no special
support for error handling.
requires: Forth
ports: TILE Release 2 by Mikael Patel
updated: 1992/05/22
language: BNF ??
package: ZUSE
version: ?
parts: parser generator(?)
author: Arthur Pyster
how to get: ? Univ Calif at Santa Barbara ?
description: ll(1) paser generator
requires: Pascal
updated: 1986/09/23
language: BNF ??
package: FMQ
version: ?
parts: paser generator w/error corrector generator
author: Jon Mauney
how to get: ftp from csczar.ncsu.edu
status: ?
contact: ?
updated: 1990/03/31
language: BNF ??
package: ATS (Attribute Translation System)
version: ?
author: ? University of Saskatchewan ?
how to get: ?
description: generates table-driven LL(1) parsers with full insert-only
error recovery. It also handles full left-attribute semantic
handling, which is a dream compared to using YACC's parser
actions.
contact: ?
sggstd-contact: Dave Bocking <bocking@cs.usask.ca>
status: ?
updated: 1988/11/29
language: BNF (Extended)
package: PCCTS (Purdue Compiler-Construction Tool Set)
version: 1.06
parts: scanner generator, parser generator (LL(k)), documentation,
tutorial
author: Terence J. Parr <parrt@ecn.purdue.edu>, Will E. Cohen
<cohenw@ecn.purdue.edu>, Henry G. Dietz <hankd@ecn.purdue.edu>
how to get: ftp pub/pccts/1.06 from marvin.ecn.purdue.edu
uk: ftp /comput*/progra*/langu*/tools/pccts/* from src.doc.ic.ac.uk
description: PCCTS is similar to a highly integrated version of YACC
and LEX; where ANTLR (ANother Tool for Language
Recognition) corresponds to YACC and DLG (DFA-based
Lexical analyzer Generator) functions like LEX.
However, PCCTS has many additional features which make
it easier to use for a wide range of translation
problems. PCCTS grammars contain specifications for
lexical and syntactic analysis, semantic predicates,
intermediate-form construction and error reporting.
Rules may employ Extended BNF (EBNF) grammar constructs
and may define parameters, return values and local
variables. Languages described in PCCTS are recognized
via LL(k) parsers constructed in pure, human-readable,
C code. PCCTS parsers may be compiled with C++.
ports: UNIX, DOS, OS/2
portability: very high
contact: Terence J. Parr <parrt@ecn.purdue.edu>
updated: 1992/12/14
language: COCOL (EBNF variant)
package: COCO/R
version: 1.28
author: Hanspeter Moessenboeck <moessenboeck@inf.ethz.ch>
Port to Modula-2 done by Marc Brandis, Christof Brass
and Pat Terry <cspt@alpha.ru.ac.za>
how to get: contact Hanspeter Moessenboeck or Pat Terry
parts: parser generator(LL(1))
description: Coco/R generates recursive descent parsers and their associated
scanners from attributed grammars. Coco/R can bootstrap itself
to generate its own driver, parser, scanner, and semantic
evaluator from the attributed grammar CR.ATG. This grammar
thus serves as an an example of how to write compiler
descriptions for Coco. There are also other simpler examples
showing its use.
requires: Oberon or Modula-2
ports: MS-DOS: TopSpeed Modula-2; FST 2.0; FST 3.1; StonyBrook
QuickMod 2.2; Logitech 3.03. Macintosh: Apple MacMeth
bugs: MS-DOS related versions: Pat Terry <cspt@alpha.ru.ac.za>
Other: Hanspeter Moessenboeck <moessenboeck@inf.ethz.ch>
status: free to academic sites; commercial use requires a license
updated: 1993/04/30
language: BNF (very extended), yacc
package: PRE-CC Xtended
version: 2.30
parts: library, parser generator (LL(oo)), translator(yacc->)
how to get: ftp pub/Programs/preccx230* from ftp.comlab.ox.ac.uk
description: PRECCX is an infinite-lookahead compiler compiler
for context dependent grammars. The generated code is
ANSI C. Specification scripts are in very EBNF with
inherited and synthetic attributes allowed. Scripts can
be compiled in separate modules, and linked together
later. Meta-production rules allowed. The technology
is essentially LL(oo) with optimizations. A converter
for yacc scripts is available.
ports: unix?, MS-DOS
contact: Peter T. Breuer <ptb@comlab.ox.ac.uk>
Jonathan Bowen <bowen@comlab.ox.ac.uk>
updated: 1992/08/25 (later versions available by subscription)
language: BNF ??
package: LLGen
version: ?
parts: parser generator
author: ? Fischer and LeBlanc ?
how to get: ? ftp from csczar.ncsu.edu ?
description: LL(1) parser generator
conformance: subset of FMQ
reference: "Crafting A Compiler", by Fischer and LeBlanc
status: ?
contact: ?
updated: 1990/03/31
language: BNF ??
package: wacco
version: ?
parts: parser generator
how to get: comp.sources.misc volume ?
description: LL(?) parser generator
contact: ?
updated: ?
language: BNF (Extended), BNF (yacc), Modula-2
package: GMD Toolbox for Compiler Construction (aka Cocktail)
version: 9209
parts: parser generator (LALR -> C, Modula-2), documentation,
parser generator (LL(1) -> C, Modula-2), tests,
scanner generator (-> C, Modula-2), tests
translator (Extended BNF -> BNF), translator (Modula-2 -> C),
translator (BNF (yacc) -> Extended BNF), examples
abstract syntax tree generator, attribute-evaluator generator,
how to get: ftp pub/cocktail/dos from ftp.karlsruhe.gmd.de
OS/2: ftp.eb.ele.tue.nl/pub/src/cocktail/dos-os2.zoo
description: A huge set of compiler building tools.
requires: (ms-dos only) DJ Delorie's DOS extender (go32)
(OS/2 only) emx programming environment for OS/2
ports: msdos, unix, os/2
contact: Josef Grosch <grosch@karlsruhe.gmd.de>
OS/2: Willem Jan Withagen <wjw@eb.ele.tue.nl>
discussion: subscribe to Cocktail using listserv@eb.ele.tue.nl
updated: 1992/10/01
language: BNF ????
package: T-gen
version: 2.1
parts: parser generator, documentation, ?
author: Justin Graver <graver@comm.mot.com>
how to get: ftp pub/st80_r41/T-gen2.1/* from st.cs.uiuc.edu
description: T-gen is a general-purpose object-oriented tool for the
automatic generation of string-to-object translators.
It is written in Smalltalk and lives in the Smalltalk
programming environment. T-gen supports the generation
of both top-down (LL) and bottom-up (LR) parsers, which
will automatically generate derivation trees, abstract
syntax trees, or arbitrary Smalltalk objects. The simple
specification syntax and graphical user interface are
intended to enhance the learning, comprehension, and
usefulness of T-gen.
ports: ParcPlace Objectworks/Smalltalk 4.0 & 4.1
requires: Smalltalk-80
updated: 1992/10/18
language: BNF
package: Eli Compiler Construction System
version: 3.4.2
parts: ?????, translator(WEB->BNF?)
how to get: ftp pub/cs/distribs/eli/* from ftp.cs.colorado.edu
ports: Sun-3/SunOS4.1 Sun-4/SunOS4.1.2 RS/6000/AIX3 Mips/Ultrix4.2
HP9000/300/HP-UX8.00 HP9000/700/HP-UX8.07
description: Eli integrates off-the-shelf tools and libraries with
specialized language processors to generate complete compilers
quickly and reliably. It simplifies the development of new
special-purpose languages, implementation of existing languages
on new hardware and extension of the constructs and features of
existing languages.
discussion: <eli-request@cs.colorado.edu>
contact: <compiler@cs.colorado.edu>, <compiler@uni-paderborn.de>
updated: 1993/02/11
language: Milarepa
package: Milarepa Perl/BNF Parser
version: Prototype 1.0
parts: parser-generator, examples, tutorial
author: Jeffrey Kegler <jeffrey@netcom.com>
how to get: ?
description: Milarepa takes a source grammar in the Milarepa language (a
straightforward mix of BNF and Perl) and generates a Perl file,
which, when enclosed in a simple wrapper, parses some third
language described by the source grammar.
This is intended to be a real hacker's parser. It is not
restricted to LR(k), and the parse logic follows directly from
the BNF. It handles ambiguous grammars, ambiguous tokens
(tokens which were not positively identified by the lexer) and
allows the programmer to change the start symbol. The grammar
may not be left recursive. The input must be divided into
sentences of a finite maximum length. There is no fixed
distinction between terminals and non-terminals, that is, a
symbol can both match the input AND be on the left hand side of
a production. Multiple Marpa grammars are allowed in a single
perl program.
It's only a prototype primarily due to poor speed. This is
intended to be remedied after Perl 5.0 is out.
requires: perl
updated: 1993/03/17
language: BNF (yacc)
package: NewYacc
version: 1.0
parts: parser generator, documenation
how to get: ftp src/newyacc.1.0.*.Z from flubber.cs.umd.edu
author: Jack Callahan <callahan@mimsy.cs.umd.edu>
description: [someone want to fill it in? --muir]
reference: see Dec 89 CACM for a brief overview of NewYacc.
updated: 1992/02/10
language: BNF (yacc)
package: bison
version: 1.18
parts: parser generator, documentation
author: Robert Corbett ?
how to get: ftp bison-1.16.tar.Z from a GNU archive site
bugs: bug-gnu-utils@prep.ai.mit.edu
ports: unix, atari, ?
restriction: !! will apply the GNU General Public License to *your* code !!
updated: 1992/01/28
language: BNF (yacc)
package: ? jaccl ?
version: ?
parts: parser generator
author: Dave Jones <djones@megatest.uucp>
description: a LR(1) parser generator
how to get: ?
updated: 1989/09/08
language: BNF (yacc)
package: byacc (Berkeley Yacc)
version: 1.9
parts: parser generator
author: Robert Corbett <Robert.Corbett@eng.sun.com>
how to get: ftp pub/byacc.tar.1.9.Z from vangogh.CS.Berkeley.EDU
description: probably the best yacc variant around.
history: Used to be called Zoo, and before that, Zeus
updated: 1993/02/22
language: BNF (yacc), Ada
package: aflex-ayacc
version: 1.2a
parts: parser generator (Ada), scanner generator (Ada)
author: IRUS (Irvine Research Unit in Software)
how to get: ftp pub/irus/aflex-ayacc_1.2a.tar.Z from liege.ics.uci.edu
description: Lex and Yacc equivalents that produce Ada output
announcements: irus-software-request@ics.uci.edu
contact: irus-software-request@ics.uci.edu
updated: 1993/01/06
langauge: BNF (variant), Icon
package: Ibpag2 (Icon-Based Parser Generation System 2)
version: 1.0
parts: parser generator (Icon, SLR(1))
author: Richard L. Goerwitz <goer@ellis.uchicago.edu>
how to get: alt.sources archive
description: Ibpag2 is a parser generator for Icon. It does most
of what you would expect. It doesn't handle large
grammars very well, nor can it do LALR(1).
ports: unix
updated: 1993/05/23
language: BURS ?
package: Iburg
version: ?
parts: parser generator?
author: Christopher W. Fraser <cwf@research.att.com>, David R. Hanson
<drh@princeton.edu>, Todd A. Proebsting <todd@cs.arizona.edu>
how to get: ftp pub/iburg.tar.Z from ftp.cs.princeton.edu
description: Iburg is a program that generates a fast tree parser. It is
compatible with Burg. Both programs accept a cost-augmented
tree grammar and emit a C program that discovers an optimal
parse of trees in the language described by the grammar. They
have been used to construct fast optimal instruction selectors
for use in code generation. Burg uses BURS; Iburg's matchers
do dynamic programming at compile time.
updated: 1993/02/10
language: C, C++, Objective-C, RTL
package: GNU CC (gcc)
version: 2.4.0
parts: compiler, runtime, libraries, examples, documentation
author: Richard Stallman <rms@gnu.ai.mit.edu> and others
how to get: ftp gcc-2.3.3.tar.Z from a GNU archive site
description: A very high quality, very portable compiler for C, C++,
Objective-C. The compiler is designed to support multiple
front-ends and multiple back-ends by translating first
into RTL (Register Transfer Language) and from there into
assembly for the target architecture. Front ends for
Ada, Pascal, and Fortran are all under development.
conformance: C: superset of K&R C and ANSI C.
C++: not exactly cfront 3.0? [could someone tell me which
version of cfront it is equivalent to, if any? --muir]
Objective-C: ?
portability: very high in the theory, somewhat annoying in practice
ports: 3b1, a29k, aix385, alpha, altos3068, amix, arm, convex,
crds, elxsi, fx2800, fx80, genix, hp320, clipper,
i386-{dos,isc,sco,sysv.3,sysv.4,mach,bsd,linix}, iris,
i860, i960, irix4, m68k, m88ksvsv.3, mips-news,
mot3300, next, ns32k, nws3250-v.4, hp-pa, pc532,
plexus, pyramid, romp, rs6000, sparc-sunos,
sparc-solaris2, sparc-sysv.4, spur, sun386, tahoe, tow,
umpis, vax-vms, vax-bsd, we32k, hitachi-{SH,8300}
status: actively developed
restriction: Copyleft
bugs: gnu.gcc.bug
discussion: gnu.gcc.help
announcements: gnu.gcc.announce
updated: 1993/05/17
language: C
package: c68/c386
version: 4.2a
parts: compiler
author: Matthew Brandt, Christoph van Wuellen, Keith and Dave Walker
how to get: ftp pub/Minix/common-pkgs/c386-4.2.tar.Z from bugs.nosc.mil
description: K&R C plus prototypes and other ANSI features.
targetted to several 68k and i386 assemblers, incl. gas.
floating point support by inline code or emulation.
lots of available warnings. better code generation than ACK.
ports: 386 and 68k Minix. generic unix actually.
status: actively worked on by the Walkers.
discussion: comp.os.min
updated: ?
language: C
package: GNU superoptimizer
version: 2.2
author: Torbjorn Granlund <tege@gnu.ai.mit.edu> with Tom Wood
parts: exhaustive instruction sequence optimizer
how to get: ftp superopt-2.2.tar.Z from a GNU archive site
description: GSO is a function sequence generator that uses an exhaustive
generate-and-test approach to find the shortest instruction
sequence for a given function. You have to tell the
superoptimizer which function and which CPU you want to get
code for.
This is useful for compiler writers.
restriction: Copyleft
ports: Alpha, Sparc, i386, 88k, RS/6000, 68k, 29k, Pyramid(SP,AP,XP)
bugs: Torbjorn Granlund <tege@gnu.ai.mit.edu>
updated: 1993/02/16
language: C
package: xdbx
version: 2.1
parts: X11 front end for dbx
how to get: retrieve xxgdb from comp.sources.x volumes 11, 12, 13, 14, & 16
contact: Po Cheung <cheung@sw.mcc.com>
updated: 1992/02/22
language: C
package: ups
version: 2.1
parts: interpreter, symbolic debugger, tests, documentation
how to get: ? ftp from contrib/ups*.tar.Z from export.lcs.mit.edu ?
unofficial: unofficial enhancements by Rod Armstrong <rod@sj.ate.slb.com>,
available by ftp misc/unix/ups/contrib/rob from sj.ate.slb.com
author: Mark Russell <mtr@ukc.ac.uk>
description: Ups is a source level C debugger that runs under X11 or
SunView. Ups includes a C interpreter which allows you to add
fragments of code simply by editing them into the source window
ports: Sun, Decstation, VAX(ultrix), HLH Clipper
discussion: ups-users-request@ukc.ac.uk
bugs: Mark Russell <mtr@ukc.ac.uk>
updated: 1991/05/20
language: C
package: C_Interp
version: ?
parts: interpreter
how to get: ftp Mac/Misc/C_Interp.sit from oac2.hsc.uth.tmc.edu
description: "I've made the C Interpreter that I mentioned in a previous
posting available for anonymous FTP"
[ Where did this come from? Does this include source?
What is it really called? Who is the real contact? --muir]
contact: Chuck Shotton <cshotton@oac.hsc.uth.tmc.edu> ?
updated: 1993/05/14
language: C (ANSI)
package: lcc
version: 1.8
parts: compiler, test suite, documentation
author: Dave Hanson <drh@cs.princeton.edu>
how to get: ftp pub/lcc/lccfe-*.tar.Z from princeton.edu
description: + hand coded C parser (faster than yacc)
+ retargetable
+ code "as good as GCC"
ports: vax (mips, sparc, 68k backends are commercial)
status: small-scale production use using commerical backends; the
commercial backends are cheap (free?) to universities.
discussion: lcc-requests@princeton.edu
updated: 1992/02/20
language: C, Chop ?, lcc ?
package: Chop
version: 0.6
parts: code generator
author: Alan L. Wendt <wendt@CS.ColoState.EDU>
how to get: ftp pub/chop/0.6.tar.Z from beethoven.cs.colostate.edu
description: The current revision, 0.6, is interfaced with Fraser and
Hanson's lcc front end. The result is a highly fast C compiler
with good code selection and no global optimization.
Project Status: Chop compiles and runs a number of small test
programs on the Vax. I'm currently updating the NS32k and 68K
retargets for lcc compatibility. After I get them working,
I'll work on getting the system to compile itself, get struct
assignments working, improve the code quality and compile
speed, and run the SPEC benchmarks. That will be rev 1.0.
references: "Fast Code Generation Using Automatically-Generated Decision
Trees", ACM SIGPLAN '90 PLDI
updated: 1993/04/28
language: C
package: GCT
version: 1.4
parts: test-coverage-preprocessor
author: Brian Marick <marick@cs.uiuc.edu>
how to get: ftp pub/testing/gct.file/ftp.* from cs.uiuc.edu
description: GCT is test-coverage tool based on GNU C. Coverage tools
measure how thoroughly a test suite exercises a program.
restriction: CopyLeft
discussion: Gct-Request@cs.uiuc.edu
support: commercial support available from author, (217) 351-7228
ports: sun3, sun4, rs/6000, 68k, 88k, hp-pa, ibm 3090,
ultrix, convex, sco
updated: 1993/02/12
langauge: C
package: MasPar mpl, ampl
version: 3.1
parts: compiler
how to get: ftp put/mpl-* from maspar.maspar.com
description: mpl & ampl - the intrinsic parallel languages for MasPar's
machines are C (ampl is actually a gcc port these days). You
can get the source from marpar.com.
contact: ?
updated: ?
language: C
package: dsp56k-gcc
version: ?
parts: compiler
how to get: ftp pub/ham/dsp/dsp56k-tools/dsp56k-gcc.tar.Z from nic.funet.fi
au: ftp pub/micros/56k/g56k.tar.Z from evans.ee.adfa.oz.au
description: A port of gcc 1.37.1 to the Motorola DSP56000 done by
Motorola
contact: ?
updated: ?
language: C
package: dsp56165-gcc
version: ?
parts: compiler
author: Andrew Sterian <asterian@eecs.umich.edu>
how to get: ftp usenet/alt.sources/? from wuarchive.wustl.edu
description: A port of gcc 1.40 to the Motorola DSP56156 and DSP56000.
updated: ?
language: C
package: Harvest C
version: 2.1
how to get: ftp mac/development/languages/harves* from archive.umich.edu
description: ?
ports: Macintosh
contact: Eric W. Sink
updated: 1992/05/26
language: C, C++
package: Xcoral
version: 1.72
parts: editor
how to get: ftp X/contrib/clients/xcoral* from ftp.inria.fr
description: Xcoral is a multiwindows mouse-based text editor, for X Window
System, with a built-in browser to navigate through C functions
and C++ classes hierarchies... Xcoral provides variables width
fonts, menus, scrollbars, buttons, search, regions,
kill-buffers and 3D look. Commands are accessible from menus
or standard key bindings. Xcoral is a direct Xlib client and
run on color/bw X Display.
contact: ?
updated: 1993/03/14
language: C++
package: aard ???
version: ?
parts: memory use tracer
how to get: ftp pub/aard.tar.Z from wilma.cs.brown.edu
description: We have a prototype implementation of a tool to do memory
checking. It works by keeping track of the typestate of each
byte of memory in the heap and the stack. The typestate can be
one of Undefined, Uninitialized, Free or Set. The program can
detect invalid transitions (i.e. attempting to set or use
undefined or free storage or attempting to access uninitialized
storage). In addition, the program keeps track of heap
management through malloc and free and at the end of the run
will report all memory blocks that were not freed and that are
not accessible (i.e. memory leaks).
The tools works using a spliced-in shared library.
contact: Steve Reiss <spr@cs.brown.edu>
requires: Sparc, C++ 3.0.1, SunOS 4.X
language: C++
package: ET++
version: 3.0-alpha
parts: class libraries, documentation
how to get: ftp C++/ET++/* from iamsun.unibe.ch
contact: Erich Gamma <gamma@ifi.unizh.ch>
updated: 1992/10/26
language: C++
package: C++ grammar
how to get: comp.sources.misc volume ?
description: [is this a copy of the Roskind grammer or something else?
--muir]
parts: parser(yacc)
updated: 1991/10/23
language: C++
package: C++ Object Oriented Library
version: COOL ?, GECOOL 2.1, JCOOL 0.1
parts: libraries, tests, documentation
how to get: GECOOL, JCOOL: ftp pub/COOL/* from cs.utexas.edu
COOL: ftp pub/COOL.tar.Z from csc.ti.com
description: A C++ class library developed at Texas Instruments. Cool
contains a set of containers like Vectors, List, Has_Table,
etc. It uses a shallow hierarchy with no common base
class. The funtionality is close to Common Lisp data
structures (like libg++). The template syntax is very close
to Cfront3.x and g++2.x. Can build shared libraries on Suns.
JCOOL's main difference from COOL and GECOOL is that it uses real C++
templates instead of a similar syntax that is preprocessed by a
special 'cpp' distributed with COOL and GECOOL.
ports: ?
contact: Van-Duc Nguyen <nguyen@crd.ge.com>
updated: 1992/08/05
langauge: C++
package: ??? A C++ Parser toolkit
version: ?
parts: library
author: Mayan Moudgill <moudgill@cs.cornell.EDU>
how to get: ftp pub/Parse.shar from ftp.cs.cornell.edu
description: A collection of C++ classes that make building a
recursive descent parser/scanner very easy.
portability: uses mmap(); probably low.
ports: Sun 4 with cfront 3.0,
updated: 1993/04/11
language: C++, Extended C++
package: EC++
version: ?
parts: translator(C++), documentation
author: Glauco Masotti <masotti@lipari.usc.edu>
how to get: ? ftp languages/c++/EC++.tar.Z from ftp.uu.net ?
description: EC++ is a preprocessor that translates Extended C++
into C++. The extensions include:
+ preconditions, postconditions, and class invariants
+ parameterized classes
+ exception handling
+ garbage collection
status: ?
updated: 1989/10/10
language: C++
package: LEDA
version: 3.0
parts: libraries
how to get: ftp pub/LEDA/* from ftp.cs.uni-sb.de
description: library of efficient data types and algorithms.
New with 3.0: both template and non-template versions.
contact: Stefan N"aher <stefan@mpi-sb.mpg.de>
updated: 1992/11/30
language: E (a persistent C++ variant)
package: GNU E
version: 2.3.3
parts: compiler
how to get: ftp exodus/E/gnu_E* from ftp.cs.wisc.edu
description: GNU E is a persistent, object oriented programming language
developed as part of the Exodus project. GNU E extends C++
with the notion of persistent data, program level data objects
that can be transparently used across multiple executions of a
program, or multiple programs, without explicit input and
output operations.
GNU E's form of persistence is based on extensions to the C++
type system to distinguish potentially persistent data objects
from objects that are always memory resident. An object is
made persistent either by its declaration (via a new
"persistent" storage class qualifier) or by its method of
allocation (via persistent dynamic allocation using a special
overloading of the new operator). The underlying object
storage system is the Exodus storage manager, which provides
concurrency control and recovery in addition to storage for
persistent data.
restriction: Copyleft; not all runtime sources are available (yet)
requires: release 2.1.1 of the Exodus storage manager
contact: exodus@cs.wisc.edu
updated: 1993/01/20
language: C (ANSI)
package: ? 1984 ANSI C to K&R C preprocessor ?
version: ?
parts: translator(K&R C)
author: ?
how to get: from comp.sources.unix archive volume 1
status: ?
updated: ?
language: C (ANSI)
package: unproto ?
version: ? 4 ? 1.6 ?
parts: translator(K&R C)
author: Wietse Venema <wietse@wzv.win.tue.nl>
how to get: ftp pub/unix/unproto4.shar.Z from ftp.win.tue.nl
contact: ?
updated: ?
language: C (ANSI)
package: cproto
version: ?
parts: translator(K&R C)
author: Chin Huang <chin.huang@canrem.com>
how to get: from comp.sources.misc archive volume 29
description: cproto generates function prototypes from function definitions.
It can also translate function definition heads between K&R
style and ANSI C style.
ports: UNIX, MS-DOS
updated: 1992/07/18
langauge: C (ANSI)
package: cextract
version: 1.7
parts: translator(K&R C), header file generator
how to get: ftp from any comp.sources.reviewed archive
author: Adam Bryant <adb@cs.bu.edu>
description: A C prototype extractor, it is ideal for generating
header files for large multi-file C programs, and will
provide an automated method for generating all of the
prototypes for all of the functions in such a program.
It may also function as a rudimentary documentation
extractor, generating a sorted list of all functions
and their locations
ports: Unix, VMS
updated: 1992/11/03
language: ANSI C
package: cgram
version: ?
parts: grammar
author: Mohd Hanafiah Abdullah <napi@cs.indiana.edu>
how to get: ftp pub/comp.compilers/cgram-ll1.Z from primost.cs.wisc.edu
description: An ANSI C grammar in LL(k) (1 <= k <= 2). It's written in
Scheme, so you need to have a Scheme interpreter to process
the grammar using a program (f-f-d.s) that extracts the
FIRST/FOLLOW/DIRECTOR sets.
requires: Scheme
ports: ?
updated: ?
language: C, ANSI C, C++
package: The Roskind grammars
version: cpp5 (cf2.0)
parts: parser(yacc), documenation
author: Jim Roskind <jar@hq.ileaf.com>
how to get: ftp pub/gnu/c++grammar2.0.tar.Z from ics.uci.edu
ftp pub/C++/c++grammar2.0.tar.Z from mach1.npac.syr.edu
description: The C grammar is CLEAN, it does not use %prec, %assoc, and
has only one shift-reduce conflict. The C++ grammar has
a few conflicts.
Also included is an extension to byacc that produces
graphical parse trees automatically.
conformance: the C grammar si true ANSI; the C++ grammar supports
cfront 2.0 constructs.
requires: byacc 1.8 (for graphical parse trees)
status: actively developed
updated: 1991/07/01
language: C, C++
package: xxgdb
version: 1.06
parts: X11 front end for gdb
how to get: retrieve xxgdb from comp.sources.x volumes 11, 12, 13, 14, & 16
contact: Pierre Willard <pierre@la.tce.com>
updated: 1992/02/22
language: C, C++
package: gdb
version: 4.9
parts: symbolic debugger, documentation
how to get: ftp gdb-*.tar.[zZ] from a GNU archive site
author: many, but most recently Stu Grossman <grossman@cygnus.com>
and John Gilmore <gnu@cygnus.com> of Cygnus Support
ports: most unix variants, vms, vxworks, amiga, msdos
bugs: <bug-gdb@prep.ai.mit.edu>
restriction: CopyLeft
updated: 1993/05/12
language: Duel (a <practical> C debugging language)
package: DUEL
version: 1.10
parts: interpreter
author: Michael Golan <mg@cs.princeton.edu>
how to get: ftp duel/* from ftp.cs.princeton.edu
description: DUEL acts as front end to gdb. It implements a language
designed for debbuging C programs. It maily features
efficient ways to select and display data items. It is
normally linked into the gdb executable, but could stand
alone. It interprets a subset of C in addition to its
own language.
requires: gdb
status: author is pushing the system hard.
updated: 1993/03/15
language: C, C++, Objective C
package: emx programming environment for OS/2
version: 0.8f
parts: gcc, g++, gdb, libg++, .obj linkage, DLL, headers
how to get: ftp pub/os2/2.0/programming/emx-0.8f from ftp-os2.nmsu.edu
europe: ftp soft/os2/emx-0.8f from rusmv1.rus.uni-stuttgart.de
author: Ebenhard Mattes <mattes@azu.informatik.uni-stuttgart.de>
discussion: subscribe to emxlist using listserv@ludd.luth.se
updated: 1992/09/21
language: C
package: PART's C Pthreads
version: ?
parts: library
author: PART (POSIX / Ada-Runtime Project)
how to get: ftp pub/PART/pthreads* from ftp.cs.fsu.edu
description: As part of the PART project we have been designing and
implementing a library package of preemptive threads which is
compliant with POSIX 1003.4a Draft 6. A description of the
interface for our Pthreads library is now available on ftp. Our
implementation is limited to the Sun SPARC architecture and
SunOS 4.1.x. We do not make any use of Sun's light-weight
processes to achieve better performance (with one I/O-related
exception).
restriction: GNU Library General Public License
discussion: send "Subject: subscribe-pthreads" to mueller@uzu.cs.fsu.edu
contact: pthreads-bugs@ada.cs.fsu.edu
updated: 1993/03/05
language: C, nroff
package: c2man
version: 2.03
parts: documentation generator (C -> nroff -man)
how to get: comp.sources.reviewed archive volume 3
author: Graham Stoney <greyham@research.canon.oz.au>
description: c2man is a program for generating Unix style manual pages in
nroff -man format directly from ordinary comments embedded
in C source code
updated: 1993/05/18
language: Small-C
package: smallc
version: ?
parts: compiler
author: ?
how to get: ?, comp.sources.unix volume 5
description: Small-C is a subset of the C programming language for which a
number of public-domain compilers have been written. The
original compiler was written by Ron Cain and appeared in the
May 1980 issue of Dr.Dobb's Journal. More recently, James
E.Hendrix has improved and extended the original Small-C
compiler and published "The Small-C Handbook", ISBN
0-8359-7012-4 (1984). Both compilers produce 8080 assembly
language, which is the most popular implementation of Small-C
to-date. My 6502 Small-C compiler for the BBC Micro is based
on "RatC", a version of the original Ron Cain compiler
described by R.E.Berry and B.A.Meekings in "A Book on C", ISBN
0-333-36821-5 (1984). The 6502 compiler is written in Small-C
and was bootstrapped using Zorland C on an Amstrad PC1512 under
MSDOS 3.2, then transferred onto a BBC Micro using Kermit. The
compiler can be used to cross-compile 6502 code from an MSDOS
host, or as a 'resident' Small-C compiler on a BBC Micro.
conformance: subset of C
ports: 68k, 6809, VAX, 8080, BBC Micro, Z80
updated: 1989/01/05
language: C-Refine, C++-Refine, *-Refine
package: crefine
version: 3.0
parts: pre-processor, documentation
how to get: aquire from any comp.sources.reviewed archive
author: Lutz Prechelt <prechelt@ira.uka.de>
description: C-Refine is a preprocessor for C and languages that
vaguely resemble C's syntax. It allows symbolic naming
of code fragments so as to redistribute complexity and
provide running commentary.
portability: high
ports: unix, msdos, atari, amiga.
updated: 1992/07/16
language: CAML (Categorical Abstract Machine Language)
package: CAML
version: 3.1
parts: ?
author: ?
description: CAML is a language belonging to the ML family including:
+ lexical binding discipline
+ static type inference
+ user-defined (sum and product) types
+ possibly lazy data structures
+ possibly mutable data structures
+ interface with the Yacc parser generator
+ pretty-printing tools
+ and a complete library.
how to get: ? ftp lang/caml from nuri.inria.fr ?
status: ?
discussion: ?
ports: Sun-3 Sun-4 Sony-68k Sony-R3000 Decstation Mac-A/UX Apollo
portability: ?
bugs: weis@margaux.inria.fr or caml@margaux.inria.fr
updated: ?
language: Caml Light
package: Caml Light
version: 0.4
how to get: ftp lang/caml-light/* from nuri.inria.fr
author: Xavier Leroy <xleroy@margaux.inria.fr>
parts: bytecode compiler, runtime, scanner generator, parser generator
ports: most unix, Macintosh, Amiga, MSDOS
conformance: subset of CAML
features: very small
performance: five to ten times slower than SML-NJ
portability: very high
contact: Xavier Leroy <xleroy@margaux.inria.fr>
updated: 1991/10/05
language: CASE-DSP (Computer Aided Software Eng. for Digital Signal Proc)
package: Ptolemy
version: 0.4.1
parts: grahpical algorithm layout, code generator, simulator
how to get: ftp pub/ptolemy/* from ptolemy.bekeley.edu
description: Ptolemy provides a highly flexible foundation for the
specification, simulation, and rapid prototyping of systems.
It is an object oriented framework within which diverse models
of computation can co-exist and interact. For example, using
Ptolemy a data-flow system can be easily connected to a
hardware simulator which in turn may be connected to a
discrete-event system, etc. Because of this, Ptolemy can be
used to model entire systems.
In addition, Ptolemy now has code generation capabilities.
From a flow graph description, Ptolemy can generate both C code
and DSP assembly code for rapid prototyping. Note that code
generation is not yet complete, and is included in the current
release for demonstration purposes only.
requires: C++, C
ports: Sun-4, MIPS/Ultrix; DSP56001, DSP96002.
status: active research project
contact: ptolemy@ohm.berkeley.edu
discussion: ptolemy-hackers-request@ohm.berkeley.edu
updated: 1993/04/22
langauge: Cellang (Cellular Automata)
package: Cellular
version: 2.0
parts: byte-code compiler, runtime, viewer
author: J Dana Eckart <dana@rucs.faculty.cs.runet.edu>
how to get: comp.sources.unix, volume 26
description: A system for cellular automata programming.
updated: 1993/04/03
language: Common Lisp
package: CMU Common Lisp
version: 16f
parts: incremental compiler, profiler, runtime, documentation,
editor, debugger
how to get: ftp /afs/cs.cmu.edu/project/clisp/release/16f-source.tar.Z
from ftp.cs.cmu.edu. Precompiled versions also available
description: includes *macs-like editor (hemlock), pcl, and clx.
conformance: mostly X3J13 compatible.
ports: Sparc/Mach Sparc/SunOS Mips/Mach IBMRT/Mach
contact: slisp@cs.cmu.edu
updated: 1992/12/17
language: Common Lisp
package: PCL (Portable Common Loops)
version: 8/28/92 PCL
parts: library
author: ? Richard Harris <rharris@ptolemy2.rdrc.rpi.edu> ?
how to get: ftp pcl/* from parcftp.xerox.com
description: A portable CLOS implementation. CLOS is the object oriented
programming standard for Common Lisp. Based on Symbolics
FLAVORS and Xerox LOOPS, among others. Loops stands for
Lisp Object Oriented Programming System.
status: ?
ports: Lucid CL 4.0.1, CMUCL 16e, ?
updated: 1992/09/02
language: Common Lisp
package: WCL
version: 2.14
parts: ?, shared library runtime, source debugger
author: Wade Hennessey <wade@leland.Stanford.EDU>
how to get: ftp pub/wcl/* from sunrise.stanford.edu
description: A common lisp implementation as a shared library. WCL
Is not a 100% complete Common Lisp, but it does have
the full development environment including dynamic file
loading and debugging. A modified version of GDB provides
mixed-language debugging. A paper describing WCL was
published in the proceedings of the 1992 Lisp and Functional
Programming Conference.
requires: GNU C 2.1 (not 2.2.2)
ports: Sparc/SunOS
contact: <wcl@sunrise.stanford.edu>
discussion: <wcl-request@sunrise.stanford.edu>
updated: 1992/10/28
language: Common Lisp
package: KCL (Kyoto Common Lisp)
parts: translator(C), interpreter
how to get: ? ftp pub/kcl*.tar.Z from rascal.ics.utexas.edu ?
author: T. Yuasa <yuasa@tutics.tut.ac.jp>, M. Hagiya
<hagiya@is.s.u-tokyo.ac.jp>
description: KCL, Kyoto Common Lisp, is an implementation of Lisp,
It is written in the language C to run under Un*x-like
operating systems. KCL is very C-oriented; for example,
the compilation of Lisp functions in KCL involves a
subsidiary C compilation.
conformance: conforms to the book ``Common Lisp: The Language,''
G. Steele, et al., Digital Press, 1984.
restriction: must sign license agreement
discussion: kcl-request@cli.com
bugs: kcl@cli.com
updated: 1987/06
language: Common Lisp
package: AKCL (Austin Kyoto Common Lisp)
version: 1-615
parts: improvements
author: Bill Schelter <wfs@cli.com>
how to get: ftp pub/akcl-*.tar.Z from rascal.ics.utexas.edu
author: Bill Schelter <wfs@rascal.ics.utexas.edu>
description: AKCL is a collection of ports, bug fixes, and
performance improvements to KCL.
ports: Decstation3100, HP9000/300, i386/sysV, IBM-PS2/aix, IBM-RT/aix
SGI Sun-3/Sunos[34].* Sun-4 Sequent-Symmetry IBM370/aix,
VAX/bsd VAX/ultrix NeXT
updated: 1992/04/29
language: Common Lisp
package: CLX
version: 5.01
parts: library
how to get: ftp contrib/CLX.R5.01.tar.Z from export.lcs.mit.edu
description: Common Lisp binding for X
contact: ?
ports: ?, CMU Common Lisp
bugs: bug-clx@expo.lcs.mit.edu
updated: 1992/08/26
language: Common Lisp
package: CLISP
version: ?
parts: bytecode compiler, translator(->C), runtime, library, editor
author: Bruno Haible <haible@ma2s2.mathematik.uni-karlsruhe.de>,
Michael Stoll <michael@rhein.iam.uni-bonn.de>
how to get: ftp pub/lisp/clisp from ma2s2.mathematik.uni-karlsruhe.de
description: CLISP is a Common Lisp (CLtL1) implementation by Bruno Haible
of Karlsruhe University and Michael Stoll of Munich University,
both in Germany. It needs only 1.5 MB of RAM. German and
English versions are available, French coming soon. Packages
running in CLISP include PCL and, on Unix machines, CLX.
conformance: CLISP is mostly CLtL1 compliant. It implements 99% of the
standard
ports: Atari, Amiga, MS-DOS, OS/2, Linux, Sun4, Sun386i, HP90000/800
and others
discussion: send "subscribe clisp-list" to
listserv@ma2s2.mathematik.uni-karlsruhe.de
restriction: GNU General Public License
updated: 1993/03/10
language: Common Lisp
package: Cartier's Contribs
version: 1.2
parts: libraries, documentation
author: Guillaume Cartier <cartier@math.uqam.ca>
how to get: ftp pub/mcl2/contrib/Cartiers* from cambridge.apple.com
description: libraries for MCL
requires: Macintosh Common Lisp
updated: 1992/11/30
language: Common Lisp
package: QT-OBJECTS
version: ?
author: Michael Travers <mt@media.mit.edu> and others
parts: library
description: interface between MCL and QuickTime
requires: Macintosh Common Lisp
updated: 1992/12/20
language: Common Lisp
package: Memoization ?
version: ?
parts: library
how to get: ftp pub/Memoization from archive.cs.umbc.edu
author: Marty Hall <hall@aplcenmp.apl.jhu.edu>
description: Automatic memoization is a technique by which an existing
function can be transformed into one that "remembers"
previous arguments and their associated results
updated: 1992/11/30
language: Common Lisp
package: GINA (Generic Interactive Application)
version: 2.2
parts: language binding, class library, interface builder
how to get: ftp /gmd/gina from ftp.gmd.de
usa: ftp contrib/? from export.lcs.mit.edu
description: GINA is an application framework based on Common Lisp and
OSF/Motif to simplify the construction of graphical
interactive applications. It consists of:
+ CLM, a language binding for OSF/Motif in Common Lisp.
+ the GINA application framework, a class library in CLOS
+ the GINA interface builder, an interactive tool implemented
with GINA to design Motif windows.
requires: OSF/Motif 1.1 or better. Common Lisp with CLX, CLOS, PCL and
processes.
ports: Franz Allegro, Lucid, CMU CL and Symbolics Genera
discussion: gina-users-request@gmdzi.gmd.de
--
Send compilers articles to compilers@iecc.cambridge.ma.us or
{ima | spdcc | world}!iecc!compilers. Meta-mail to compilers-request.